In recent years, virtualization technology for executing a plurality of operating systems (hereinafter “OS”) on a single calculator is being widely used. Normally, with a single calculator, it is not possible to execute more OSs than the number of cores of a processor. To execute more OSs than the number of cores, the processor has to be operated while switching the OSs in a time division manner, and a program called a monitor is used as software for switching the OS.
At the time of switching between the OSs, the monitor mentioned above saves the register that is used by the OS which is the switching source in a storage device such as a main memory, and restores the register to be used by the OS which is the switching destination from the main memory or the like. In the OS switching, in many cases, the saving/restoration process of a register by the monitor is the factor that sets a limit on the speed of OS switching, and this tendency is strong when the number of registers is great, such as in the case of a processor of ARM (registered trademark), for example.